home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Skunkware 5
/
Skunkware 5.iso
/
src
/
X11
/
scripts
/
xclnt
< prev
next >
Wrap
Text File
|
1995-07-17
|
10KB
|
568 lines
:
MAXWHEELS=16
PATH=/usr/skunk/bin:/usr/skunk/bin/X11:$PATH
export PATH
LIB=/usr/skunk/pics
SPLINES=/usr/skunk/lib/splines
PROG=$0
limit=-1
round=1
bdemo=
cdemo=
ddemo=
gdemo=
l2demo=
m2demo=
j2demo=
l3demo=
m3demo=
j3demo=
l4demo=
m4demo=
j4demo=
m5demo=
l5demo=
j5demo=
l6demo=
j6demo=
l7demo=
j7demo=
ldemo=
mdemo=
jdemo=
pdemo=
hdemo=
sdemo=
qflag=
select=true
quiet=
restor=1
usage() {
echo "\nUsage: $PROG [-QRqbcdghkmpsu]"
echo "\tWhere -q queries for desired demos"
echo "\t\t-b indicates spline curve demos"
echo "\t\t-c indicates madness curve demos"
echo "\t\t-d indicates dust demos"
echo "\t\t-g indicates topographic demos"
echo "\t\t-h indicates heart demos"
echo "\t\t-j indicates Julia set demos"
echo "\t\t-l indicates Lyapunov set demos"
echo "\t\t-m indicates Mandelbrot set demos"
echo "\t\t-p indicates Iterated Parametric Equations demos"
echo "\t\t-s indicates stars demos"
echo "\t\t-Q indicates quiet mode"
echo "\t\t-R indicates do not restore screen saving mode"
echo "\t\t-u displays this message"
echo "\n$PROG is a shell script front-end for several graphical X clients"
echo "written by Ronald Joe Record. When invoked with no arguments, it"
echo "cycles through all of the clients in a finite amount of time."
echo "In this way, $PROG makes an excellent rolling demo.\n"
}
while case "$1" in
-b|spline|splines) bdemo=1
select=
;;
-c|curve|curves) cdemo=1
select=
;;
-d|spore|spores) ddemo=1
select=
;;
-g|midpt|-midpt) gdemo=1
select=
;;
-j7|julia7) j7demo=1
select=
;;
-j6|julia6) j6demo=1
select=
;;
-l6|lyap6) l6demo=1
select=
;;
-l7|lyap7) l7demo=1
select=
;;
-j5|julia5) j5demo=1
select=
;;
-l5|lyap5) l5demo=1
select=
;;
-m5|mandel5) m5demo=1
select=
;;
-j3|julia3) j3demo=1
select=
;;
-l3|lyap3) l3demo=1
select=
;;
-m3|mandel3) m3demo=1
select=
;;
-j4|julia4) j4demo=1
select=
;;
-l4|lyap4) l4demo=1
select=
;;
-m4|mandel4) m4demo=1
select=
;;
-j2|julia2) j2demo=1
select=
;;
-l2|lyap2) l2demo=1
select=
;;
-m2|mandel2) m2demo=1
select=
;;
-j|julia) jdemo=1
select=
;;
-l|lyap) ldemo=1
select=
;;
-m|mandel) mdemo=1
select=
;;
-p|hop) pdemo=1
select=
;;
-h|heart|madness) hdemo=1
select=
;;
-s|stars|-stars) sdemo=1
select=
;;
-Q|quiet|-quiet) quiet=1
;;
-q|query|-query) qflag=1
;;
-R|restor|-restor) restor=
;;
-limit) limit=$2
shift
;;
-u|usage|-usage) usage
exit 1
;;
"") break
;;
esac
do
shift
done
[ "$quiet" ] || {
echo "Welcome to the xclnt demo script, written by Ronald Joe Record."
echo "It is `date`."
echo "The xclnt demo will begin."
}
if [ "$qflag" ] && [ "$select" ]
then
while echo "Do you want the heart drawing demo ? (y/n) \c"
do
read answer
[ "$answer" = "y" ] && {
hdemo=1
break
}
[ "$answer" = "n" ] && break
done
while echo "Do you want the spline curve drawing demos ? (y/n) \c"
do
read answer
[ "$answer" = "y" ] && {
bdemo=1
break
}
[ "$answer" = "n" ] && break
done
while echo "Do you want the madness curve drawing demos ? (y/n) \c"
do
read answer
[ "$answer" = "y" ] && {
cdemo=1
break
}
[ "$answer" = "n" ] && break
done
while echo "Do you want the aggregating particle demos ? (y/n) \c"
do
read answer
[ "$answer" = "y" ] && {
ddemo=1
break
}
[ "$answer" = "n" ] && break
done
while echo "Do you want the artificial landscape drawing demos ? (y/n) \c"
do
read answer
[ "$answer" = "y" ] && {
gdemo=1
break
}
[ "$answer" = "n" ] && break
done
while echo "Do you want the Julia set drawing demos ? (y/n) \c"
do
read answer
[ "$answer" = "y" ] && {
jdemo=1
j2demo=1
j3demo=1
j4demo=1
j5demo=1
j6demo=1
j7demo=1
break
}
[ "$answer" = "n" ] && break
done
while echo "Do you want the Lyapunov set drawing demos ? (y/n) \c"
do
read answer
[ "$answer" = "y" ] && {
ldemo=1
l2demo=1
l3demo=1
l4demo=1
l5demo=1
l6demo=1
l7demo=1
break
}
[ "$answer" = "n" ] && break
done
while echo "Do you want the Mandelbrot set drawing demos ? (y/n) \c"
do
read answer
[ "$answer" = "y" ] && {
mdemo=1
m2demo=1
m3demo=1
m4demo=1
m5demo=1
break
}
[ "$answer" = "n" ] && break
done
while echo "Do you want the stars demos ? (y/n) \c"
do
read answer
[ "$answer" = "y" ] && {
sdemo=1
break
}
[ "$answer" = "n" ] && break
done
while echo "Do you want the parametric equations demo ? (y/n) \c"
do
read answer
[ "$answer" = "y" ] && {
pdemo=1
break
}
[ "$answer" = "n" ] && break
done
else
[ "$select" ] && {
bdemo=1
cdemo=1
ddemo=1
gdemo=1
jdemo=1
j2demo=1
j3demo=1
j4demo=1
j5demo=1
j6demo=1
j7demo=1
ldemo=1
l2demo=1
l3demo=1
l4demo=1
l5demo=1
l6demo=1
l7demo=1
mdemo=1
m2demo=1
m3demo=1
m4demo=1
m5demo=1
pdemo=1
hdemo=1
sdemo=1
}
fi
trap '/usr/bin/X11/xset s default; rm -f /tmp/xclnt_stop; exit 1' 1 2 3 15
echo "kill -15 $$" > /tmp/xclnt_stop
/usr/bin/X11/xset s off
xroot
while [ $limit -ne 0 ]
do
[ "$ldemo" ] && {
xroot -l
for i in $LIB/lyap/*
do
wheel=`random $MAXWHEELS`
lyap -c $wheel -d -i $i -Delay 0
done
}
[ "$jdemo" ] && {
xroot -j
for i in $LIB/julia/*
do
wheel=`random $MAXWHEELS`
julia -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$mdemo" ] && {
xroot -j
for i in $LIB/mandel/*
do
wheel=`random $MAXWHEELS`
mandel -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$cdemo" ] && {
adec=`random 8`
adec=`expr $adec + 1`
bdec=`random 8`
bdec=`expr $bdec + 1`
cdec=`random 8`
cdec=`expr $cdec + 1`
ddec=`random 8`
ddec=`expr $ddec + 1`
ncol=`random 2`
if [ $ncol = 0 ]
then
ncol=2
elif [ $ncol = 1 ]
then
ncol=4
fi
madness -D -s$ncol -a 0.$adec -b 0.0$bdec -c -0.$cdec -z $ddec.0 -n 10000 -N 1 -W 512 -H 512
}
[ "$hdemo" ] && madness -A -D -T 0.005 -N 20 -W 1000 -H 800
[ "$gdemo" ] && {
xroot -s
wheel=`random $MAXWHEELS`
beta=`random 75`
beta=`expr $beta + 25`
level=`random 50`
xtopo -d -c $wheel -H 0.$beta -S 0.$level
}
[ "$sdemo" ] && {
xroot -s
xvel=`random 50`
xvel=`expr $xvel + 1`
yvel=`random 30`
yvel=`expr $yvel + 1`
wiggle=`random 2`
reverse=`random 2`
[ $wiggle = 1 ] && X=-X
[ $reverse = 1 ] && R=-r
stars -F -D 600 -B 4 -a $xvel -b $yvel -w $X $R
}
[ "$l6demo" ] && {
xroot -l
for i in $LIB/lyap6/*
do
wheel=`random $MAXWHEELS`
lyap -c $wheel -d -i $i -Delay 0
done
}
[ "$bdemo" ] && {
wheel=`random $MAXWHEELS`
$SPLINES/lines -n 1 -c $wheel
}
[ "$j5demo" ] && {
xroot -j
for i in $LIB/julia5/*
do
wheel=`random $MAXWHEELS`
julia -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$cdemo" ] && {
this=`random 1`
if [ $this = 0 ]
then
madness -D -s4 -a 0.6 -b 0.04 -c -0.8 -z 4.0 -n 20000 -N 1 -W 512 -H 512
else
madness -D -s2 -a 0.6 -b 0.05 -c -0.8 -z 2.0 -n 20000 -N 1 -W 512 -H 512
fi
}
[ "$pdemo" ] && {
mode=`random 6`
hop -D $mode
}
[ "$hdemo" ] && madness -A -D -T 0.006 -N 6 -R -T 6 -N 20 -W 1000 -H 800
[ "$cdemo" ] && madness -D -s 4 -N 1 -n 20000 -W 512 -H 512
[ "$j6demo" ] && {
xroot -j
for i in $LIB/julia6/*
do
wheel=`random $MAXWHEELS`
julia -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$bdemo" ] && {
wheel=`random $MAXWHEELS`
$SPLINES/lying -l 4096 -n 1 -c $wheel
}
[ "$j7demo" ] && {
xroot -j
for i in $LIB/julia7/*
do
wheel=`random $MAXWHEELS`
julia -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$l2demo" ] && {
xroot -l
for i in $LIB/lyap2/*
do
wheel=`random $MAXWHEELS`
lyap -c $wheel -d -i $i -Delay 0
done
}
[ "$m5demo" ] && {
xroot -j
for i in $LIB/mandel5/*
do
wheel=`random $MAXWHEELS`
mandel -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$j3demo" ] && {
xroot -j
for i in $LIB/julia3/*
do
wheel=`random $MAXWHEELS`
julia -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$l4demo" ] && {
xroot -l
for i in $LIB/lyap4/*
do
wheel=`random $MAXWHEELS`
lyap -c $wheel -d -i $i -Delay 0
done
}
[ "$m3demo" ] && {
xroot -j
for i in $LIB/mandel3/*
do
wheel=`random $MAXWHEELS`
mandel -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$j4demo" ] && {
xroot -j
for i in $LIB/julia4/*
do
wheel=`random $MAXWHEELS`
julia -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$l3demo" ] && {
xroot -l
for i in $LIB/lyap3/*
do
wheel=`random $MAXWHEELS`
lyap -c $wheel -d -i $i -Delay 0
done
}
[ "$bdemo" ] && {
wheel=`random $MAXWHEELS`
$SPLINES/string -l 1024 -n 1 -c $wheel
}
[ "$m4demo" ] && {
xroot -j
for i in $LIB/mandel4/*
do
wheel=`random $MAXWHEELS`
mandel -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$j2demo" ] && {
xroot -j
for i in $LIB/julia2/*
do
wheel=`random $MAXWHEELS`
julia -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$l5demo" ] && {
xroot -l
for i in $LIB/lyap5/*
do
wheel=`random $MAXWHEELS`
lyap -c $wheel -d -i $i -Delay 0
done
}
[ "$bdemo" ] && {
wheel=`random $MAXWHEELS`
$SPLINES/sticks -l 4096 -n 1 -c $wheel
}
[ "$l7demo" ] && {
xroot -l
for i in $LIB/lyap7/*
do
wheel=`random $MAXWHEELS`
lyap -c $wheel -d -i $i -Delay 0
done
}
[ "$m2demo" ] && {
xroot -j
for i in $LIB/mandel2/*
do
wheel=`random $MAXWHEELS`
mandel -c $wheel -d 1 -i $i -Delay 0
done
}
[ "$sdemo" ] && stars -F -D 1000
[ "$bdemo" ] && {
wheel=`random $MAXWHEELS`
$SPLINES/strips -l 4096 -n 1 -c $wheel
}
[ "$sdemo" ] && stars -F -D 600 -B `random 4` -a 2 -b 1
[ "$ddemo" ] && {
wheel=`random 2`
if [ $wheel = 0 ]
then
xroot -h
elif [ $wheel = 1 ]
then
xroot -k
fi
wheel=`random $MAXWHEELS`
balls=`random 5`
balls=`expr $balls + 1`
spore -d -c $wheel -F -N $balls
}
[ "$bdemo" ] && {
wheel=`random $MAXWHEELS`
$SPLINES/flying -l 4096 -n 1 -c $wheel
}
limit=`expr $limit - 1`
[ "$quiet" ] || {
echo "The xclnt demo completes round $round at `date`"
round=`expr $round + 1`
}
done
[ "$restor" ] && /usr/bin/X11/xset s default